开机速度优化方法论 开机速

🔍 溯源 ✍️ Jason | 📅 2026-07-21 | 👍 0 | 原帖↗
#知识星球 #立芯嵌入式 #来源/立芯星球 #技术/Android #技术/开机优化 #质量/精华

原帖 | Jason | 2026-07-21 11:16 | 👍0 | 阅读约1

开机速度优化方法论

开机速度快慢直接影响产品竞争力,消费类设备必须做开机速度优化,以最复杂的 Android 为例,其他类同。

一、先抓日志,定位哪里拖慢开机

1. 串口工具波特率调到921600,全程抓取开机uart打印日志,每条日志带时间,看出哪一段停留久。

2. 系统进入桌面后,用 bootchartd 工具生成开机时序图表。后期系统启动任务非常多,光看串口日志很难理清,必须靠这个工具可视化分析每个进程耗时。

二、开机分4个阶段

启动流程:bootrom → bootloader → kernel 内核 → rootfs 系统桌面

  1. bootrom 优化

1. 拉高PLL时钟到最大频率;
2. 开启 eMMC 高速宽位读写模式;
3. 关闭 uart 打印输出。

  1. bootloader/LK 引导层优化

1. 单核启动改成多核并行加载内核;
2. 删掉无关调试打印日志,串口很占时间;
3. LK加载内核时会解压内核包,默认gzip压缩换成LZO,快1秒;
4. 删掉默认3秒的boot_mode_select等待延时,直接跳过,不用等按键选择模式。

  1. kernel内核层优化

1. 调整mmc存储驱动初始化逻辑,优化initrd镜像加载流程;
2. 删掉项目用不上的驱动(USB、WiFi这类驱动初始化特别慢);
3. 精简initcall驱动加载队列,不用的硬件探测全部关闭,减少上电扫描耗时。

  1. rootfs系统层(安卓上层)优化

打开init.rc启动脚本,把项目不需要自启动的服务、进程全部注释删除,少启动程序开机就更快。

三、如果整套流程都很慢

软件全部优化完开机还是偏慢,基本是存储硬件短板:设备内存性能偏弱,或者eMMC/UFS闪存规格太差,读写速度跟不上,只能更换更好的存储硬件解决。

谷歌官方开机优化完整教程:


相关笔记